Sorry if this is a reapeat, but I don't think it got distributed because I was sending from a unsubscribed account. What is the mechanism that produces a segmentation violation while a users code is executing. How does the kernel control the situation when at the time it is not even executing? Does it use a interupt? If so, could someone explain how this works (a basic understanding of what a interupt is and how it works would help me here)? if it does rely on the hardware (I assuming perhaps incorrectly that such a interupt must have hardware support), how does that effect the porting of UNIX to different machine architectures? Specifically it interests me how UNIX is implememted on intel x86 machines which being designed to run single user OS's might not have the proper hardware support for multitasking OS's. Perhaps this belongs on a different group. It posted it here, because it follows directly from "Tim Newshams" assembly source post. It would help to better understand the bug. MikeB